﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Numerics;
using RRRSRoguelike;
using RRRSRoguelike.Managers;
using RRRSRoguelike.Helpers;
using RRRSRoguelikeData;
using RRRSRoguelike.Helpers.Behaviors;

namespace RRRSRoguelike.Entities
{
    /// <summary>
    /// Represents the current sole bad guy.
    /// </summary>
    public class Monster : Creature
    {

        #region constructor
        /// <summary>
        /// Takes a point and initializes the monster.
        /// </summary>
        /// <param name="p"></param>
        public Monster(Point position, TileData tileData)
            : base(position,tileData)
        {
        }
        #endregion

        #region methods
        //The monster should be in charge of where it moves.
        //This should be a behaviour that can be used by any creature
        /// <summary>
        /// 
        /// </summary>
        /// <param name="playerLocation"></param>
        /// <param name="monsters"></param>
        public void MoveToPlayer(Point playerLocation,IList<Monster> monsters)
        {
        	if (Name == "Lurker")
        	{
        		Lurker.MoveToTarget(this,playerLocation);
        	}
        	else{
            Mindless.MoveToTarget(this, playerLocation);
        	}
        }
#endregion

    }
}
